using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using TerritoryGame.Application.Dtos;

namespace TerritoryGame.Application.Interfaces
{
    public interface IAppUserLevelService
    {
        Task<UserLevelDto> GetUserLevelAsync(Guid userId);
        Task<List<UserLevelDto>> GetAllUserLevelsAsync();
        Task<LevelUpResultDto> AddExperienceAsync(AddExperienceDto dto);
        Task<bool> ChangeTitleAsync(ChangeTitleDto dto);
        Task<List<TitleInfoDto>> GetUserTitlesAsync(Guid userId);
        Task<List<TitleInfoDto>> GetAllTitlesAsync();
    }
}
